#! /usr/bin/env python3
x = b"hello"
y = x[1:3]  # 切片操作，得到 b"el"
z = x + b"world"  # 拼接操作，得到 b"helloworld"

# 需要注意的是，bytes 类型中的元素是整数值，因此在进行比较操作时需要使用相应的整数值。例如：
# 实例
# x = b"hello"
# if x[0] == ord("h"):
#     print("The first element is 'h'")

# 其中 ord() 函数用于将字符转换为相应的整数值。

# print(x)

a1=2
b1=3
c1=a1**b1 #a1的b1次幂
d1=a1//b1 #除之后往小的方向取整数
print(c1)
#比较和赋值运算符和c没什么区别
#位运算符也没什么区别，不过在赋值的时候可以直接按位的形式赋值
#与或非是 and or not
a = 10
b = 20
list = [1, 2, 3, 4, 5 ]
 
if ( a in list ): #找不在是 not in
   print ("1 - 变量 a 在给定的列表中 list 中")
else:
   print ("1 - 变量 a 不在给定的列表中 list 中")

#  身份运算符用于比较两个对象的存储单元
# 运算符	描述	实例
# is	is 是判断两个标识符是不是引用自一个对象	x is y, 类似 id(x) == id(y) , 如果引用的是同一个对象则返回 True，否则返回 False
# is not	is not 是判断两个标识符是不是引用自不同对象	x is not y ， 类似 id(x) != id(y)。如果引用的不是同一个对象则返回结果 True，否则返回 False。

# 注： id() 函数用于获取对象内存地址。

# s 与 == 区别：

# is 用于判断两个变量引用对象是否为同一个， == 用于判断引用变量的值是否相等。

# 复数( (complex)) - 复数由实数部分和虚数部分构成，可以用a + bj,或者complex(a,b)表示， 复数的实部a和虚部b都是浮点型。

# >>> number = 0xA0F # 十六进制
# >>> number
# 2575

#数字也可以用同类型转换的方式进行类型转换

var1 = 'Hello World!'
print ("已更新字符串 : ", var1[:6] + 'Runoob!')

#转义字符

# in	成员运算符 - 如果字符串中包含给定的字符返回 True 	'H' in a 输出结果 True
# not in 	成员运算符 - 如果字符串中不包含给定的字符返回 True 	'M' not in a 输出结果 True
# r/R	原始字符串 - 原始字符串：所有的字符串都是直接按照字面的意思来使用，没有转义特殊或不能打印的字符。 原始字符串除在字符串的第一个引号前加上字母 r（可以大小写）以外，与普通字符串有着几乎完全相同的语法。	

# print( r'\n' )
# print( R'\n' )

#python字符串格式化
print ("我叫 %s 今年 %d 岁!" % ('小明', 10))
#格式化操作辅助指令

para_str = """这是一个多行字符串的实例
多行字符串可以使用制表符
TAB ( \t )。
也可以使用换行符 [ \n ]。
"""
print (para_str)
#使用sql时可以用这个

x = 1
print(f'{x+1}')
#python还有很多字符串相关函数

